Monitoring of availability data for system management environments

ABSTRACT

A method and system for monitoring availability data of a system management (SM) environment. A connection configuration associated with the SM environment is retrieved from a central repository, wherein the SM environment is coupled to a SM portal server that includes the central repository, and wherein the SM environment includes one or more terminal systems. In response to determining that the retrieved connection configuration properly establishes communication between the SM portal server and the SM environment, availability data pertaining to availability of resources at endpoints of the one or more terminal systems is collected. The collected availability data recorded in the central repository.

This application is a continuation application claiming priority to Ser.No. 13/216,608, filed Aug. 24, 2011.

BACKGROUND

Conventional system management technologies use a single point ofcontrol and system status data collection for multiple computer systemsin a system management (SM) environment. Consequently, conventionalsystems management technologies cannot automatically manage and monitormultiple SM environments.

BRIEF SUMMARY

According to one embodiment of the present invention, a method forautomatically monitoring and reporting availability data of at least onesystem management (SM) environment comprises: identifying a SMenvironment of said at least one SM environment that is eligible fordata collection, wherein the SM environment is coupled to a SM portalserver, wherein the SM portal server comprises a central repository, auser interface, and a data collection module, wherein the SM environmentcomprises a monitoring server and one or more terminal systems coupledto the monitoring server, and wherein the monitoring server runs anavailability module that enables collecting of various system level datafrom said one or more terminal systems; retrieving connectionconfiguration associated with the identified SM environment from thecentral repository; collecting the availability data from theavailability module upon determining that the retrieved connectionconfiguration properly establishes communication between the SM portalserver and the identified SM environment, wherein the availability datarepresents availability of resources of said one or more terminalsystems; recording the collected availability data and a transaction logof said collecting in the central repository; and communicating contentof the central repository from said recording such that a user of the SMportal server utilizes contents of the central repository in analyzingavailability of the resources in the SM environment.

According to one embodiment of the present invention, a computer programproduct comprises a computer readable memory unit that embodies acomputer readable program code. The computer readable program codecontains instructions that, when run by a processor of a computersystem, implement a method for automatically monitoring and reportingavailability data of at least one SM environment.

According to one embodiment of the present invention, a computer systemcomprises a processor, a memory coupled to the processor, and a computerreadable storage device coupled to the processor, said storage devicecontaining program code configured to be executed by the processor viathe memory to implement a method for automatically monitoring andreporting availability data of at least one SM environment.

According to one embodiment of the present invention, a process forsupporting computer infrastructure, said process comprising providing atleast one support service for at least one of creating, integrating,hosting, maintaining, and deploying computer-readable code in acomputing system, wherein the code in combination with the computingsystem is capable of performing a method for automatically monitoringand reporting availability data of at least one SM environment.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

FIG. 1 illustrates a system 10 for automatically monitoring andreporting availability data of respective system managementenvironments, in accordance with embodiments of the present invention.

FIG. 2 illustrates the system management portal server (SMPS) 21 in thesystem 10 of FIG. 1, in accordance with the embodiments of the presentinvention.

FIG. 3 illustrates components of the public customer system 25 in thesystem 10 of FIG. 1, wherein the components of the public customersystem are coupled via a public network, in accordance with theembodiments of the present invention.

FIG. 4 illustrates components of the private customer system 26 in thesystem 10 of FIG. 1, wherein the components of the private customersystem are coupled via a private network, in accordance with theembodiments of the present invention.

FIG. 5 is a flowchart depicting a method for automatically monitoringand reporting availability data of respective system managementenvironments, which is performed by the data collection module in theSMPS of FIG. 2, in accordance with the embodiments of the presentinvention.

FIG. 6 is a flowchart depicting a method for automatically generatingavailability data of respective system management environments, which isperformed by the regional availability module in themonitoring/management region server of FIG. 3 for a public customersystem, in accordance with the embodiments of the present invention.

FIG. 7 is a flowchart depicting a method for automatically generatingavailability data of respective system management environments, which isperformed by the enterprise availability module in themonitoring/management enterprise server of FIG. 4 for a private customersystem, in accordance with the embodiments of the present invention.

FIG. 8 is an example of a screen display implementing the web-basedgraphical user interface (GUI) of the SMPS of FIG. 2, in accordance withembodiments of the present invention.

FIG. 9 is an example of a detailed status report generated by the datacollection module running in the SMPS of FIG. 2, in accordance withembodiments of the present invention.

FIG. 10 illustrates a computer system used for automatically monitoringand reporting availability data of respective system managementenvironments, in accordance with the embodiments of the presentinvention.

DETAILED DESCRIPTION

FIG. 1 illustrates a system 10 for automatically monitoring andreporting availability data of respective system managementenvironments, in accordance with embodiments of the present invention.

The system 10 comprises a user 11, a system management portal server 21,and one or more customer systems. In this specification, terms “systemmanagement (SM) environment” and “customer system” are usedinterchangeably to indicate a digital communication networkinterconnecting two or more computer systems subject to said automaticmonitoring and reporting.

A public customer system 25 of said one or more customer systems is afirst customer system wherein components are interconnected via a publicnetwork environment. The public customer system 25 comprises amonitoring/management region server 31 and at least one endpointrespectively coupled to the monitoring/management region server 31. Aprivate customer system 26 of said one or more customer systems is asecond customer system wherein components are interconnected via aprivate network environment. The private customer system 26 comprises amonitoring/management enterprise server 51 and at least one agentrespectively coupled to the monitoring/management enterprise server 51.

The user 11 is a human user administering the system management portalserver 21 providing inputs comprising control data and receiving outputscomprising reports to and from the system management portal server 21,respectively. In one embodiment of the present invention, the user 11interacts with the system management portal server 21 by use ofweb-based graphical user interface (GUI). The inputs of the control datadictate automatic monitoring and reporting operations for the systemavailability data performed by the system management portal server 21and respective servers of the customer systems. The inputs of thereports comprise information on current and historical status of thesystem management portal server 21, and information on current andhistorical status of respective components of all customer systemscoupled to the system management portal server 21. In thisspecification, terms “availability data” and “system availability data”are used interchangeably to define a percentile value representing aratio of available system resources to total system resources.

The system management portal server 21 automatically collects andsubsequently consolidates, analyzes and stores system availability datafrom respective servers of the customer systems. The system managementportal server 21 interacts with the user 11 by receiving inputs from theuser 11 and by returning outputs to the user 11 as being generated bycomponents of the customer systems, 25 and 26. The system managementportal server 21 enables the user 11 to interact with the customersystems, 25 and 26, in controlling operations of respective servers andin receiving status reports from the respective servers of the customersystems, 25 and 26. See descriptions of FIG. 2 infra for details forcomponents of the system management portal server 21.

The monitoring/management region server 31 of the public customer system25 performs automatic monitoring for availability data of said at leastone endpoint in the public customer system 25. In one embodiment of thepresent invention, the monitoring/management region server 31 isimplemented by use of IBM® Tivoli® Management Region (TMR) Server, whichmay run in various operating systems (IBM and Tivoli are registeredtrademarks of International Business Machines Corporation in the UnitedStates and other countries). Examples of the operating systems in whichthe IBM TMR server runs may be, inter alia, Linux®, AIX®, Solaris®,HP-UX®, Windows™ etc. (Linux is a registered trademark of Linus Torvaldsin the United States; AIX is a registered trademark of IBM Corporation,in the United States and other countries; Solaris is a registeredtrademark of Sun Microsystems, Inc., in the United States and othercountries; HP-UX is a registered trademark of Hewlett-Packard Company inthe United States and other countries; and Windows is a trademark ofMicrosoft Corporation, in the United States and other countries.)

In the public customer system 25, an endpoint A 41A of said at least oneendpoint is coupled to the monitoring/management region server 31. Theendpoint 41 is a client program deployed on terminal systems of thepublic customer system 25 in order to provide availability data to themonitoring/management region server 31 in performing automaticmonitoring and reporting. In one embodiment of the present invention,the endpoint 41 is implemented by use of IBM Tivoli Endpoint, whereinthe monitoring/management region server 31 is implemented by use of IBMTivoli Management Region (TMR) Server. The endpoint A 41A may run onvarious operating systems. Examples of the operating systems in whichthe IBM Tivoli Endpoint runs may be, inter alia, Linux, AIX, Solaris,HP-UX, Windows, etc. See description of FIG. 3 infra for an example ofthe public customer system 25.

The monitoring/management enterprise server 51 of the private customersystem 26 performs automatic monitoring for availability data of said atleast one agent in the private customer system 26. In one embodiment ofthe present invention, the monitoring/management enterprise server 51 isimplemented by use of IBM Tivoli Enterprise Portal Server (TEPS), whichmay run in AIX operating system.

In the private customer system 26, an agent 61 of said at least oneagent is coupled to the monitoring/management enterprise server 51. Theagent 61 is another client program deployed on terminal systems of theprivate customer system 26 in order to provide availability data to themonitoring/management enterprise server 51 in performing automaticmonitoring and reporting. In one embodiment of the present invention,the agent 61 is implemented by use of IBM Tivoli Enterprise MonitoringAgent (TEMA), wherein the monitoring/management enterprise server 51 isimplemented by use of IBM Tivoli Enterprise Monitoring Server (TEMS).The agent 61 may run on an operating system selected from Linux, AIX,Solaris, HP-UX, and Windows. See descriptions of FIG. 4 infra for anexample of the private customer system 26. In this specification, theterm “terminal systems” collectively indicates both endpoints coupled tomonitoring/management region servers and agents coupled tomonitoring/management enterprise servers.

FIG. 2 illustrates the system management portal server 21 in the system10 of FIG. 1 supra, in accordance with the embodiments of the presentinvention.

The system management portal server (SMPS) 21 comprises a web-basedgraphical user interface (GUI) 22, a central repository 23, and a datacollection module 24.

The SMPS 21 interacts with the user 11 by use of the web-based GUI 22,in receiving the control data from the user 11 and in displaying thereports to the user 11 resulting from operating the data collectionmodule 24. Examples of the reports may be, inter alia, dynamic statusreports, web charts, availability data trends, etc. See FIG. 8 infra foran example of the web-based GUI 22.

The central repository 23 of the SMPS 21 stores all availability dataused by the data collection module 24 as being gathered from thecustomer systems and generated before, during, and after performingautomatic monitoring and reporting of the availability data. In oneembodiment of the present invention, data stored in the centralrepository 23 are used for, inter alia, a historical analysis for trendsof the availability data, troubleshooting of terminal systems, etc.

The data collection module 24 connects to and orchestrates operations ofavailability modules running on respective servers of respectivecustomer systems in collecting latest availability data from allterminal systems coupled to the SMPS 21. See description of FIG. 5 infrafor operations performed by the data collection module 24.

Wherein the SMPS 21 monitors and manages terminal systems coupled to themonitoring/management region server 31, the data collection module 24interacts with a regional availability module running in themonitoring/management region server 31 in the public customer system 25.See description of FIG. 3 infra for details of the regional availabilitymodule.

Wherein the SMPS 21 monitors and manages terminal systems coupled to themonitoring/management enterprise server 51, the data collection module24 interacts with an enterprise availability module running in themonitoring/management enterprise server 51 in the private customersystem 26. See description of FIG. 4 infra for details of the enterpriseavailability module.

FIG. 3 illustrates components of the public customer system 25 in thesystem 10 of FIG. 1 supra, wherein the components of the public customersystem are coupled via a public network, in accordance with theembodiments of the present invention.

The public customer system 25 further comprises a public systemmanagement environment comprising at least one computer system selectedfrom the group consisting of a Windows endpoint 42, an AIX endpoint 43,a Solaris endpoint 44, a HP-UX endpoint 45, and a Linux endpoint 46,which are coupled to the monitoring/management region server 31 via thepublic network. The Windows endpoint 42 runs in a Windows server on afirst computer system of the public customer system 25. The AIX endpoint43 runs in an AIX server on a second computer system of the publiccustomer system 25. The Solaris endpoint 44 runs in a Solaris server ona third computer system of the public customer system 25. The HP-UXendpoint 45 runs in a HP-UX server on a fourth computer system of thepublic customer system 25. The Linux endpoint 46 runs in a Linux serveron a fifth computer system of the public customer system 25. In oneembodiment of the present invention, each endpoint is respectivelyimplemented as a respective Tivoli Endpoint installed in said respectiveserver, and the respective Tivoli Endpoint is coupled to a Tivoli Regionenvironment, which implements the monitoring/management region server31.

The monitoring/management region server 31 performs system managementservice tasks for the public customer system 25. Themonitoring/management region server 31 comprises a regional availabilitymodule 32, which collects availability data from above listed endpointsof the public customer system 25. See description of FIG. 6 infra foroperations performed by the regional availability module 32. In oneembodiment of the present invention, the regional availability module 32runs on a system management environment based on specific client-serverarchitecture, inter alia, Tivoli Framework, Tivoli Monitoring v6, andBMC® Patrol®. (BMC and Patrol are registered trademarks of BMC SoftwareInc., in the United States and other countries)

The regional availability module 32 is commonly referred to as“availability agents” that work as a client-side program interactingwith a server-side program implemented as the system management portalserver 21 of FIG. 1 supra. Various computer systems of the public systemmanagement environment interacts with the system management portalserver 21 of FIG. 1 supra via the regional availability module 32running on the monitoring/management region server 31 such that themonitoring/management region server 31 integrates said various computersystems into a single environment for system management by collectingdata from each computer system of the public system managementenvironment.

In one embodiment of the present invention, the regional availabilitymodule 32 is Tivoli Availability Agent that is installed on each TivoliManagement Region (TMR) Server, which is an example of themonitoring/management region server 31. In the same embodiment, thesystem management portal server 21 of FIG. 1 supra is implemented byTivoli Framework Server.

FIG. 4 illustrates components of the private customer system 26 in thesystem 10 of FIG. 1 supra, wherein the components of the privatecustomer system are coupled via a private network, in accordance withthe embodiments of the present invention.

The private customer system 26 further comprises a private systemmanagement environment comprising at least one computer system selectedfrom the group consisting of a Windows agent 62, an AIX agent 63, aSolaris agent 64, a HP-UX agent 65, and a Linux agent 66, which arecoupled to the monitoring/management enterprise server 51 via theprivate network. The Windows agent 62 runs in a Windows server on afirst computer system of the private customer system 26. The AIX agent63 runs in an AIX server on a second computer system of the privatecustomer system 26. The Solaris agent 64 runs in a Solaris server on athird computer system of the private customer system 26. The HP-UX agent65 runs in a HP-UX server on a fourth computer system of the privatecustomer system 26. The Linux agent 66 runs in a Linux server on a fifthcomputer system of the private customer system 26. In one embodiment ofthe present invention, each agent is respectively implemented as arespective Tivoli Enterprise Monitoring Agent (TEMA) installed in saidrespective server, and the respective TEMA is coupled to a TivoliEnterprise Monitoring Server (TEMS), which implements themonitoring/management enterprise server 51.

The monitoring/management enterprise server 51 performs systemmanagement service tasks for the private customer system 26. Themonitoring/management enterprise server 51 comprises an enterpriseavailability module 52, which collects availability data from abovelisted agents of the private customer system 26. See description of FIG.7 infra for operations performed by the enterprise availability module52. In one embodiment of the present invention, themonitoring/management enterprise server 51 is a Tivoli Enterprise PortalServer (TEPS) that runs on a AIX Operating System. The enterpriseavailability module 52 runs on a system management environment based onspecific client-server architecture, inter alia, Tivoli Framework,Tivoli Monitoring v6, and BMC® Patrol®. (BMC and Patrol are registeredtrademarks of BMC Software Inc., in the United States and othercountries)

The enterprise availability module 52 operates as a client-side programinteracting with a server-side program implemented as the systemmanagement portal server 21 of FIG. 1 supra. Various computer systems ofthe private system management environment interacts with the systemmanagement portal server 21 of FIG. 1 supra via the enterpriseavailability module 52 running on the monitoring/management enterpriseserver 51 such that the monitoring/management enterprise server 51integrates said various computer systems into a single environment forsystem management by collecting data from each computer system of theprivate customer system 26.

FIG. 5 is a flowchart depicting a method for automatically monitoringand reporting availability data of respective system managementenvironments, which is performed by the data collection module in thesystem management portal server (SMPS) of FIG. 2 supra, in accordancewith the embodiments of the present invention.

The data collection module is configured to integrate various systemmanagement (SM) environments coupled to the SMPS. The data collectionmodule performs steps 110 through 170 respectively for each SMenvironment.

In step 110, the data collection module identifies a current SMenvironment that is eligible for availability data collection. Then thedata collection module proceeds with step 120.

In step 120, the data collection module retrieves, from the centralrepository, configuration information of the current SM environmentidentified in step 110 supra, for connection between the SMPS and therespective monitoring/management server and subsequent availability datacollection. Then the data collection module proceeds with step 130.

In step 130, the data collection module determines whether theconfiguration information retrieved in step 120 supra is proper forfurther data communication between the SMPS and the respectivemonitoring/management server of the current SM environment. If the datacollection module determines that the configuration information isproper, then the data collection module proceeds with step 140. If thedata collection module determines that the configuration information isimproper, then the data collection module proceeds with step 170.

In step 140, the data collection module collects availability data froman availability module of the current SM environment. The availabilitymodule generates the availability data from terminal systems of thecurrent SM environment by performing steps shown in FIGS. 6 and 7 infra.Then the data collection module proceeds with step 150.

In step 150, the data collection module checks validity of theavailability data collected in step 140 supra. If the data collectionmodule determines that the availability data is valid, then the datacollection module proceeds with step 160. If the data collection moduledetermines that the availability data is not valid, then the datacollection module proceeds with step 170.

In step 160, the data collection module stores the valid availabilitydata as determined in step 150 supra, as well as transaction records, inthe central repository of the SMPS. Then the data collection moduleloops back to step 110 for a next SM environment.

In step 170, the data collection module reports a respective errorpursuant to a respective preceding step. If the data collection moduleperforms step 170 subsequent to step 130, the data collection modulereports a first type of error of improper connection configuration. Ifthe data collection module performs step 170 subsequent to step 150, thedata collection module reports a second type of error of invalidavailability data collected from availability modules. Then the datacollection module loops back to step 110 for a next SM environment. Thedata collection module terminates upon collecting data from all SMenvironments coupled to the SMPS.

FIG. 6 is a flowchart depicting a method for automatically generatingavailability data of respective system management environments, which isperformed by the regional availability module in themonitoring/management region server of FIG. 3 supra for a publiccustomer system, in accordance with the embodiments of the presentinvention.

The regional availability module performs steps 210 through 260 for eachendpoint eligible for checking of availability data, for all terminalsystems coupled to the monitoring/management region server. The publiccustomer system SM environment comprises various types and respectivenumber of endpoints as described in FIG. 3 supra.

In step 210, the regional availability module verifies availability of acurrent endpoint. In one embodiment of the present invention, theregional availability module is configured to verify endpointavailability pursuant to a configuration list received from the datacollection module during configuration. Then the regional availabilitymodule proceeds with step 220.

In step 215, the regional availability module determines whether thecurrent endpoint is running and available pursuant to a result of step210 supra. If the regional availability module determines that thecurrent endpoint is available, then the regional availability moduleproceeds with step 220. If the regional availability module determinesthat the current endpoint is not available, then the regionalavailability module proceeds with step 260.

In step 220, the regional availability module identifies a type ofmonitoring probe that is configured for deployment on the currentendpoint. Then the regional availability module proceeds with step 225.

In step 225, the regional availability module determines whether aproper monitoring probe is deployed on the current endpoint. If theregional availability module determines that a monitoring probe having atype corresponding to the current endpoint is deployed on the currentendpoint, then the regional availability module proceeds with step 230.If the regional availability module determines that there is nomonitoring probe deployed on the current endpoint or that a monitoringprobe deployed on the current endpoint is of a type not corresponding tothe current endpoint, then the regional availability module proceedswith step 260.

In step 230, the regional availability module identifies a respectiveversion of each monitoring probe deployed on the current endpoint. Thenthe regional availability module proceeds with step 235.

In step 235, the regional availability module determines a versioncorresponding to a monitoring probe selected for validation. The versionmay be selected from a group consisting of DM37, ITM5, and any versionsof SM environment probes for Tivoli, Patrol, etc. If the regionalavailability module determines that the version of the monitoring probeis DM37, then the regional availability module proceeds with step 240.If the regional availability module determines that the version of themonitoring probe is ITM5, then the regional availability module proceedswith step 250. For each version of the monitoring probe selected forvalidation, respective steps to check status of the monitoring probe ofsaid each version and to validate the monitoring probe follow. Suchrespective steps for other versions of monitoring probes are notillustrated in FIG. 6.

In step 240, the regional availability module checks state of a DM37engine. If the regional availability module determines that the state ofthe DM37 engine is valid, then the regional availability module proceedswith step 245. If the regional availability module determines that thestate of the DM37 engine is invalid, then the regional availabilitymodule proceeds with step 260.

In step 245, the regional availability module validates each DM37monitoring probe. Then the regional availability module proceeds withstep 260.

In steps 240 and 245, the Distributed Monitoring v3.7 (DM37) Engineclient software is installed on each endpoint to be monitored directly.The DM37 Engine is responsible to run Distributed Monitoring v3.7 (DM37)monitoring probes, or simply DM37 Probes. The DM37 Engine determineswhether or not the DM37 Probes should be triggered, and runs most of theautomated responses. The DM37 Probe is responsible to monitor specifictypes of resources, inter alia, CPU, memory, disk space, communicationbandwidth, etc. In one embodiment of the present invention, a respectiveterminal system runs a Tivoli Endpoint, a DM 37 Engine and one or moreDM37 Probes.

In step 250, the regional availability module checks state of an ITM5engine. If the regional availability module determines that the state ofthe ITM5 engine is valid, then the regional availability module proceedswith step 255. If the regional availability module determines that thestate of the ITM5 engine is invalid, then the regional availabilitymodule proceeds with step 260.

In step 255, the regional availability module validates each ITM5resource model. Then the regional availability module proceeds with step260.

In steps 250 and 255, the IBM Tivoli Monitoring v5 (ITM5) Engine clientsoftware is installed on each endpoint to be directly monitored. TheITM5 Engine is responsible to run ITM5 Resource Models (RM) monitoringprobes, or simply ITM5 resource models. The ITM5 Engine determineswhether or not the ITM5 resource models should be triggered, and runsmost of the automated responses. The ITM5 resource model is responsibleto monitor specific types of resources, inter alia, CPU, memory, diskspace, communication bandwidth, etc. In one embodiment of the presentinvention, a respective terminal system runs a Tivoli Endpoint, an ITM5Engine and one or more ITM5 Resource Models.

In step 260 the regional availability module generates a report statingresults of validation/verification steps that performed prior to step260 for the data collection module. The report comprises one or moreresults selected from the group consisting of {endpoint available,endpoint unavailable} from step 215, {deployed probe exists, no deployedprobe} from step 225, {DM37 Engine valid, DM37 Engine invalid} from step240, {DM37 Probes validated} from step 245, {ITM5 Engine valid, ITM5Engine invalid} from step 250, {ITM5 Resource Models validated} fromstep 255, and combinations thereof. Then the regional availabilitymodule loops back to step 210 to process a next endpoint. The regionalavailability module terminates upon processing all endpoints eligiblefor checking in the current SM environment.

FIG. 7 is a flowchart depicting a method for automatically generatingavailability data of respective system management environments, which isperformed by the enterprise availability module in themonitoring/management enterprise server of FIG. 4 supra, for a privatecustomer system, in accordance with the embodiments of the presentinvention.

The enterprise availability module performs steps 310 and 320 for eachSM agent eligible for checking of availability data, for all terminalsystems coupled to the monitoring/management enterprise server. Theprivate customer system SM environment comprises various types andrespective number of agents as shown in FIG. 4 supra.

In step 310, the enterprise availability module verifies availability ofa current agent. In one embodiment of the present invention, theenterprise availability module is configured to verify agentavailability pursuant to a configuration list received from the datacollection module during configuration. Then the enterprise availabilitymodule proceeds with step 320.

In step 320, the enterprise availability module generates a reportstating results of validation/verification steps that performed prior tostep 320 for the data collection module. In one embodiment of thepresent invention, the report generated by step 320 describes status ofITM6.

FIG. 8 is an example of a screen display implementing the web-basedgraphical user interface (GUI) of the system management portal server(SMPS) of FIG. 2 supra, in accordance with embodiments of the presentinvention.

The example web GUI shows a General Availability Dashboard (GAD), whichconsolidates user interfaces for numerous SM tools. The GAD displays keydata on the SM environments that are monitored by the SMPS. Examples ofkey data may be, inter alia, overall Agents & Monitors availability,current baselines, historical trends, etc.

In “CUSTOMER” column, the GAD presents, a respective name of acustomer/SM environment in which the SM environment of the presentinvention is installed.

In “Current Agent Status” column, the GAD shows an overall availabilityof systems automation agents on the respective environment identified inthe CUSTOMER column.

In “Current Monitoring Status” column, the GAD shows an overallavailability of monitors and probes running on the respective systemautomation agent.

In “Number of Agents” column, the GAD shows a respective number ofsystems automation agents on the respective environment identified inthe CUSTOMER column.

In “Reference” column, the GAD shows a time when the SM environmentidentified in the CUSTOMER column has been most recently synchronizedwith the SMPS.

In “Historical Evolution” column, the GAD shows a hyperlink to a chartdescribing historical trends of overall availability of the SMenvironment identified in the CUSTOMER column.

FIG. 9 is an example of a detailed status report generated by the datacollection module running in the system management portal server (SMPS)of FIG. 2 supra, in accordance with embodiments of the presentinvention.

The status report comprises data items collected and stored in steps ofFIG. 5 supra, and validation data items reported in step 260 of FIG. 6supra, or step 320 of FIG. 7 supra. The status report of FIG. 9 ishyperlinked to any one customer name of FIG. 8 supra and presented uponclicking a specific customer name.

FIG. 10 illustrates a computer system used for automatically monitoringand reporting availability data of respective system managementenvironments, in accordance with the embodiments of the presentinvention.

The computer system 90 comprises a processor 91, an input device 92coupled to the processor 91, an output device 93 coupled to theprocessor 91, and memory devices 94 and 95 each coupled to the processor91. In this specification, the computer system 90 represents any type ofprogrammable data processing apparatus.

The input device 92 is utilized to receive input data 96 into thecomputer system 90. The input device 92 may be, inter alia, a keyboard,a mouse, a keypad, a touch screen, a scanner, a voice recognitiondevice, a sensor, a network interface card (NIC), a Voice/video overInternet Protocol (VoIP) adapter, a wireless adapter, a telephoneadapter, a dedicated circuit adapter, etc. The output device 93 isutilized to communicate results generated by the computer program code97 to a user of the computer system 90. The output device 93 may be,inter alia, a printer, a plotter, a computer screen, a magnetic tape, aremovable hard disk, a floppy disk, a NIC, a VoIP adapter, a wirelessadapter, a telephone adapter, a dedicated circuit adapter, an audioand/or visual signal generator, a light emitting diode (LED), etc.

Any of the components of the present invention can be deployed, managed,serviced, etc. by a service provider that offers to deploy or integratecomputing infrastructure with respect to a process for automaticallymonitoring and reporting availability data of respective systemmanagement environments of the present invention. Thus, the presentinvention discloses a process for supporting computer infrastructure,comprising integrating, hosting, maintaining and deployingcomputer-readable code into a computing system (e.g., computing system90), wherein the code in combination with the computing system iscapable of performing a method for automatically monitoring andreporting availability data of respective system managementenvironments.

In another embodiment, the invention provides a method that performs theprocess steps of the invention on a subscription, advertising and/or feebasis. That is, a service provider, such as a Solution Integrator, canoffer to create, maintain, support, etc., a process for automaticallymonitoring and reporting availability data of respective systemmanagement environments of the present invention. In this case, theservice provider can create, maintain, support, etc. a computerinfrastructure that performs the process steps of the invention for oneor more customers. In return, the service provider can receive paymentfrom the customer(s) under a subscription and/or fee agreement, and/orthe service provider can receive payment from the sale of advertisingcontent to one or more third parties.

While FIG. 10 shows the computer system 90 as a particular configurationof hardware and software, any configuration of hardware and software, aswould be known to a person of ordinary skill in the art, may be utilizedfor the purposes stated supra in conjunction with the particularcomputer system 90 of FIG. 10. For example, the memory devices 94 and 95may be portions of a single memory device rather than separate memorydevices.

As will be appreciated by one skilled in the art, aspects of the presentinvention may be embodied as a system, method or computer programproduct. Accordingly, aspects of the present invention may take the formof an entirely hardware embodiment, an entirely software embodiment(including firmware, resident software, micro-code, etc.) or anembodiment combining software and hardware aspects that may allgenerally be referred to herein as a “circuit,” “module” or “system.”Furthermore, aspects of the present invention may take the form of acomputer program product embodied in one or more computer readablemedium(s) having computer readable program code embodied thereon.

Any combination of one or more computer readable medium(s) may beutilized. The computer readable medium may be a computer readable signalmedium or a computer readable storage medium. In this specification, theterm “memory device” 94, 95 represent a computer readable storagemedium. A computer readable storage medium may be, for example, but notlimited to, an electronic, magnetic, optical, electromagnetic, infrared,or semiconductor system, apparatus, or device, or any suitablecombination of the foregoing. More specific examples (a non-exhaustivelist) of the computer readable storage medium would include thefollowing: an electrical connection having one or more wires, a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), an optical fiber, a portable compact disc read-onlymemory (CD-ROM), an optical storage device, a magnetic storage device,or any suitable combination of the foregoing. In the context of thisdocument, a computer readable storage medium may be any tangible mediumthat can contain, or store a program for use by or in connection with aninstruction execution system, apparatus, or device.

A computer readable signal medium may include a propagated data signalwith computer readable program code embodied therein, for example, inbaseband or as part of a carrier wave. Such a propagated signal may takeany of a variety of forms, including, but not limited to,electro-magnetic, optical, or any suitable combination thereof. Acomputer readable signal medium may be any computer readable medium thatis not a computer readable storage medium and that can communicate,propagate, or transport a program for use by or in connection with aninstruction execution system, apparatus, or device.

Program code embodied on a computer readable medium may be transmittedusing any appropriate medium, including but not limited to wireless,wireline, optical fiber cable, RF, etc., or any suitable combination ofthe foregoing.

Computer program code 97 for carrying out operations for aspects of thepresent invention may be written in any combination of one or moreprogramming languages, including an object oriented programming languagesuch as Java, Smalltalk, C++ or the like and conventional proceduralprogramming languages, such as the “C” programming language or similarprogramming languages. The computer program code 97 may execute entirelyon the user's computer, partly on the user's computer, as a stand-alonesoftware package, partly on the user's computer and partly on a remotecomputer or entirely on the remote computer or server. In the latterscenario, the remote computer may be connected to the user's computerthrough any type of network, including a local area network (LAN) or awide area network (WAN), or the connection may be made to an externalcomputer (for example, through the Internet using an Internet ServiceProvider).

Aspects of the present invention are described with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems) and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer program instructions. The term “computer program instructions”is interchangeable with the term “computer program code” 97 in thisspecification. These computer program instructions may be provided to aprocessor of a general purpose computer, special purpose computer, orother programmable data processing apparatus to produce a machine, suchthat the instructions, which execute via the processor of the computeror other programmable data processing apparatus, create means forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks.

These computer program instructions may also be stored in a computerreadable storage medium that can direct a computer, other programmabledata processing apparatus, or other devices to function in a particularmanner, such that the instructions stored in the computer readablestorage medium produce an article of manufacture including instructionswhich implement the function/act specified in the flowchart and/or blockdiagram block or blocks.

The computer program instructions may also be loaded onto a computer,other programmable data processing apparatus, or other devices to causea series of operational steps to be performed on the computer, otherprogrammable apparatus or other devices to produce a computerimplemented process such that the instructions which execute on thecomputer or other programmable apparatus provide processes forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof code, which comprises one or more executable instructions forimplementing the specified logical function(s). It should also be notedthat, in some alternative implementations, the functions noted in theblock may occur out of the order noted in the figures. For example, twoblocks shown in succession may, in fact, be executed substantiallyconcurrently, or the blocks may sometimes be executed in the reverseorder, depending upon the functionality involved. It will also be notedthat each block of the block diagrams and/or flowchart illustration, andcombinations of blocks in the block diagrams and/or flowchartillustration, can be implemented by special purpose hardware-basedsystems that perform the specified functions or acts, or combinations ofspecial purpose hardware and computer instructions.

The corresponding structures, materials, acts, and equivalents of allmeans or step plus function elements in the claims are intended toinclude any structure, material, or act for performing the function incombination with other claimed elements as specifically claimed. Thedescription of the present invention has been presented for purposes ofillustration and description, but is not intended to be exhaustive orlimited to the invention in the form disclosed. Many modifications andvariations will be apparent to those of ordinary skill in the artwithout departing from the scope and spirit of the invention. Theembodiment was chosen and described in order to best explain theprinciples of the invention and the practical application, and to enableothers of ordinary skill in the art to understand the invention forvarious embodiments with various modifications as are suited to theparticular use contemplated.

What is claimed is:
 1. A method for monitoring availability data of asystem management (SM) environment, said method comprising: retrieving,by a processor of a computer system, a connection configurationassociated with the SM environment from a central repository, whereinthe SM environment is coupled to a SM portal server that comprises thecentral repository and an availability module, and wherein the SMenvironment comprises one or more terminal systems; in response todetermining that the retrieved connection configuration properlyestablishes communication between the SM portal server and the SMenvironment, said processor collecting availability data, from theavailability module, pertaining to availability of resources atendpoints of the one or more terminal systems; for each availableendpoint of each terminal system, verifying whether a proper monitoringprobe is deployed or not deployed at each available endpoint such that aproper monitoring probe is properly configured to monitor availabilityof resources at each available endpoint; and said processor recordingthe collected availability data in the central repository.
 2. The methodof claim 1, wherein the one or more terminal systems is a plurality ofterminal systems, and wherein said collecting comprises: validating astatus of a respective monitoring engine associated with each propermonitoring probe deployed at each available endpoint, said status beingthat the respective monitoring engine is valid or invalid.
 3. The methodof claim 1, wherein the resources at each available endpoint areindependently selected from the group consisting of CPU, memory, diskspace, communication bandwidth, and combinations thereof.
 4. The methodof claim 1, wherein said collecting further comprises: for eachmonitoring probe deployed at each available endpoint, identifying arespective version of each monitoring probe deployed at each availableendpoint.
 5. The method of claim 1, wherein said recording comprises:generating a report comprising results of said collecting; and storingthe report in the central repository, wherein the results indicate thestatus of the respective monitoring engine associated with each propermonitoring probe deployed at each available endpoint.
 6. The method ofclaim 1, wherein said collecting comprises: determining an agent statusof whether or not an agent for performing said collecting is availableat each terminal system of the one or more terminal systems; andreporting the agent status for each terminal system to the SM portalserver.
 7. The method of claim 1, said method further comprising:providing at least one support service for at least one of creating,integrating, hosting, maintaining, and deploying computer-readableprogram code in the computer system, said program code being executed bythe processor to implement said retrieving, said collecting, saidverifying, and said recording.
 8. A computer program product, comprisinga computer readable hardware storage device having computer readableprogram code stored therein, said program code containing instructionswhich, upon being executed by a processor of a computer system,implement a method for monitoring availability data of a systemmanagement (SM) environment, said method comprising: retrieving, by aprocessor of a computer system, a connection configuration associatedwith the SM environment from a central repository, wherein the SMenvironment is coupled to a SM portal server that comprises the centralrepository and an availability module, and wherein the SM environmentcomprises one or more terminal systems; in response to determining thatthe retrieved connection configuration properly establishescommunication between the SM portal server and the SM environment, saidprocessor collecting availability data, from the availability module,pertaining to availability of resources at endpoints of the one or moreterminal systems; for each available endpoint of each terminal system,verifying whether a proper monitoring probe is deployed or not deployedat each available endpoint such that a proper monitoring probe isproperly configured to monitor availability of resources at eachavailable endpoint; and said processor recording the collectedavailability data in the central repository.
 9. The computer programproduct of claim 8, wherein the one or more terminal systems is aplurality of terminal systems, and wherein said collecting comprises:validating a status of a respective monitoring engine associated witheach proper monitoring probe deployed at each available endpoint, saidstatus being that the respective monitoring engine is valid or invalid.10. The computer program product of claim 8, wherein the resources ateach available endpoint are independently selected from the groupconsisting of CPU, memory, disk space, communication bandwidth, andcombinations thereof.
 11. The computer program product of claim 8,wherein said collecting further comprises: for each monitoring probedeployed at each available endpoint, identifying a respective version ofeach monitoring probe deployed at each available endpoint.
 12. Thecomputer program product of claim 8, wherein said recording comprises:generating a report comprising results of said collecting; and storingthe report in the central repository, wherein the results indicate thestatus of the respective monitoring engine associated with each propermonitoring probe deployed at each available endpoint.
 13. The computerprogram product of claim 8, wherein said collecting comprises:determining an agent status of whether or not an agent for performingsaid collecting is available at each terminal system of the one or moreterminal systems; and reporting the agent status for each terminalsystem to the SM portal server.
 14. A computer system comprising aprocessor, a memory coupled to the processor, and a computer readablestorage device coupled to the processor, said storage device containingprogram code which, upon being executed by the processor via the memory,implements a method for monitoring availability data of a systemmanagement (SM) environment, said method comprising: retrieving, by aprocessor of a computer system, a connection configuration associatedwith the SM environment from a central repository, wherein the SMenvironment is coupled to a SM portal server that comprises the centralrepository and an availability module, and wherein the SM environmentcomprises one or more terminal systems; in response to determining thatthe retrieved connection configuration properly establishescommunication between the SM portal server and the SM environment, saidprocessor collecting availability data, from the availability module,pertaining to availability of resources at endpoints of the one or moreterminal systems; for each available endpoint of each terminal system,verifying whether a proper monitoring probe is deployed or not deployedat each available endpoint such that a proper monitoring probe isproperly configured to monitor availability of resources at eachavailable endpoint; and said processor recording the collectedavailability data in the central repository.
 15. The computer system ofclaim 14, wherein the one or more terminal systems is a plurality ofterminal systems, and wherein said collecting comprises: validating astatus of a respective monitoring engine associated with each propermonitoring probe deployed at each available endpoint, said status beingthat the respective monitoring engine is valid or invalid.
 16. Thecomputer system of claim 14, wherein the resources at each availableendpoint are independently selected from the group consisting of CPU,memory, disk space, communication bandwidth, and combinations thereof.17. The computer system of claim 14, wherein said collecting furthercomprises: for each monitoring probe deployed at each availableendpoint, identifying a respective version of each monitoring probedeployed at each available endpoint.
 18. The computer system of claim14, wherein said recording comprises: generating a report comprisingresults of said collecting; and storing the report in the centralrepository, wherein the results indicate the status of the respectivemonitoring engine associated with each proper monitoring probe deployedat each available endpoint.
 19. The computer system of claim 14, whereinsaid collecting comprises: determining an agent status of whether or notan agent for performing said collecting is available at each terminalsystem of the one or more terminal systems; and reporting the agentstatus for each terminal system to the SM portal server.